#ifndef __INC_QG_CONFIG_H__
#define __INC_QG_CONFIG_H__

#ifdef _MSC_VER
#pragma once
#endif

// WINDOWS
#if _SB_WINDOWS_ && !_SB_WINDOWS_PHONE_
// DX9
#define _QG_USE_DX9			1

// D11
#if defined(_WIN32_WINNT_WIN8) && (_WIN32_WINNT >= _WIN32_WINNT_WIN8)
#define _QG_USE_D11			1
#endif

// OPENGL
#define _QG_USE_GL			0

#if !_SB_64_ && !_QG_USE_GL
// GLES2
#define _QG_USE_ES2			1
#endif

// DSHOW
#define _QG_USE_DSHOW		0
#endif

// BSD, LINUX, OSX
#if _SB_BSD_ || _SB_LINUX_ || _SB_OSX_
// OPENGL
#define _QG_USE_GL			1
#endif

// ANDROID, IOS
#if _SB_ANDROID_ || _SB_IOS_
#define _QG_USE_ES2			1
#endif

// WINDOWS PHONE
#if _SB_WINDOWS_PHONE_
#define _QG_USE_D11			1
#endif

// SDL 
#if _SB_WINDOWS_
#	define _QG_USE_SDL		0
#elif !_SB_APPLE_
#	define _QG_USE_SDL		1
#endif

// WIDGET
#define _QG_ENABLE_WIDGET	1

// Cannot use GL & GLES2 at the same time
#if _QG_USE_ES2 && _QG_USE_GL
#error Cannot use GL & GLES2 at the same time.
#endif

#endif	// __INC_QG_CONFIG_H__
